Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add circuitpython-mpy-cross command #118

Closed
wants to merge 3 commits into from

Conversation

jepler
Copy link
Member

@jepler jepler commented Jun 15, 2024

This adds the ability to (download or build, then) invoke any supported version of mpy-cross:

$ circuitpython-mpy-cross --circuitpython-version 8.x -- --version
CircuitPython 8.2.0 on 2023-07-05; mpy-cross emitting mpy v5-CircuitPython
$ circuitpython-mpy-cross --circuitpython-version 9.x -- --version
CircuitPython 9.0.0-alpha.2 on 2023-10-27; mpy-cross emitting mpy v6.1

This also improves how mpy-cross is downloaded or built: These activities happen in the user's "cache" directory (e.g., $HOME/.cache on Linux/Mac, some other folder on Windows)

this also enables sharing the copy of mpy-cross across multiple repos.

Testing performed: with a pip install -e . of this library, just ran a local build of jepler_udecimal: circuitpython-build-bundles --filename_prefix jepler_udecimal --library_location ., as well as testing invocation of mpy-cross above.

The idea of having a download & run wrapper around mpy-cross originates with https://pypi.org/project/mpy-cross-multi/ but re-uses our existing infra for downloading or building mpy-cross as needed, instead of uploading binary artifacts to pypi.

jepler added 3 commits June 15, 2024 10:49
.. rather than in a build_deps folder, polluting the repo where it's used

this also enables sharing the copy of mpy-cross across multiple repos.
This wraps the process of building or downloading mpy-cross for a specified
version, then running it with specified arguments.

e.g.,
```
$ circuitpython-mpy-cross --circuitpython-version 9.x -- --version
CircuitPython 9.0.0-alpha.2 on 2023-10-27; mpy-cross emitting mpy v6.1
```
@jepler jepler changed the title mpy_cross: Cache it in the user cache path Add circuitpython-mpy-cross command Jun 16, 2024
@jepler jepler requested a review from tekktrik June 16, 2024 16:44
@jepler
Copy link
Member Author

jepler commented Jun 16, 2024

I also checked that the revised build instructions worked by temporarily adding a version called "9.0.x" and building it.

@jepler
Copy link
Member Author

jepler commented Jun 16, 2024

Closing this up as the PR has the wrong branch name [but the right content]

@jepler jepler closed this Jun 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant